Econométrie Appliquée

Des 🍏 sur !

Auteur·rice·s
Affiliation

Corentin Ducloux

Guillaume Devant

Date de publication

11/02/2024



MECEN Logo UT Logo


1 Imports et configuration

Note

Tout au long de ce projet, nous utiliserons l’approche tidy développée par Wickham (2014) plutôt que l’approche base R pour manipuler nos données.

library(ggplot2)
library(dplyr)
library(tidyr)
library(gt)
library(tibble)
library(patchwork)
library(FactoMineR)
library(factoextra)
library(ggtext)
library(micEcon)
library(micEconIndex)
library(micEconCES)
library(frontier)
library(performance)

2 Description des données

Le jeu de données appleProdFr86 utilisé dans le papier d’économétrie de Ivaldi et al. (1996) comprend des données transversales de production de 140 producteurs de pommes français datant de l’année 1986.

apples <- readxl::read_excel("data/appleProdFr86.xlsx")
Descriptif des colonnes
Colonnes Description
vCap Coûts associés au capital (foncier compris).
vLab Coûts associés au travail (y compris la rémunération du travail familial non rémunéré).
vMat Coûts des matières intermédiaires (plantations, engrais, pesticides, carburant, etc).
qApples Indice de quantité des pommes produites.
qOtherOut Indice de quantité de tous les autres outputs.
qOut Indice de quantité de toute la production \(\Rightarrow 580000 \cdot (\text{qApples} + \text{qOtherOut})\)
pCap Indice des prix du capital.
pLab Indice des prix du travail.
pMat Indice des prix des matières intermédiaires.
pOut Indice des prix de la production globale.
adv Distingue les producteurs qui sont conseillés par des laboratoires d’agronomie.

2.1 Tableau descriptif

Ce tableau descriptif retrace les 10 premières observations et l’ensemble des variables associées dans le dataset.

Producteurs de pommes 🍎
140 producteurs 🇫🇷 (1986)
\(N\) Costs Quantity Index Price Index \(adv\) Factor Quantities
\(v_{Cap}\) \(v_{Lab}\) \(v_{Mat}\) \(q_{Apples}\) \(q_{OtherOut}\) \(q_{Out}\) \(p_{Cap}\) \(p_{Lab}\) \(p_{Mat}\) \(p_{Out}\) \(q_{Cap}\) \(q_{Lab}\) \(q_{Mat}\)
1 220K 320K 300K 1.4 0.98 1.4M 2.6 0.90 8.9 0.66 84K 360K 34K
2 130K 190K 260K 0.86 1.1 1.1M 3.3 0.75 6.4 0.72 40K 250K 41K
3 81K 130K 91K 3.3 0.40 2.2M 2.2 0.96 3.7 0.94 37K 140K 24K
4 34K 110K 60K 0.44 0.44 510K 1.6 1.3 3.2 0.60 21K 83K 19K
5 39K 84K 100K 1.8 0.015 1.1M 0.87 0.94 7.2 0.83 45K 89K 14K
6 120K 520K 580K 8.5 0.43 5.2M 1.0 0.96 9.6 1.4 120K 550K 60K
7 89K 170K 340K 4.1 3.3 4.3M 0.98 1.0 7.8 1.3 91K 170K 44K
8 92K 200K 130K 2.2 1.1 1.9M 1.0 0.92 5.0 0.62 89K 220K 25K
9 66K 180K 190K 1.8 2.6 2.5M 2.5 1.0 5.6 1.9 27K 180K 34K
10 94K 140K 82K 1.6 0.45 1.2M 0.98 0.64 5.6 0.49 95K 220K 15K
Source: Ivaldi et al. (1996)

3 Statistiques descriptives

3.1 Productivité moyenne des facteurs de production

La productivité moyenne (\(AP =\) Average Product) consiste à diviser la quantité totale d’output par la quantité totale de facteur utilisé (input) dans le processus de production.

Imaginons que les unités d’output sont des tonnes. Pour chaque input, cela revient en fait à expliquer combien de tonnes sont produites en moyenne par unité de capital, de travail et de matières intermédiaires en 1986 pour chaque producteur de pommes.

Nous obtenons alors respectivement :

  • \(AP_{Cap} = \frac{q_{Out}}{q_{Cap}}\)

  • \(AP_{Lab} = \frac{q_{Out}}{q_{Lab}}\)

  • \(AP_{Mat} = \frac{q_{Out}}{q_{Mat}}\)

apples <- apples |> mutate(
    AP_Cap = qOut / qCap,
    AP_Lab = qOut / qLab,
    AP_Mat = qOut / qMat
)
Productivité Moyenne par Facteur 📋
Capital — Travail — Matériaux
\(\min\) \(\mu\) \(\max\) \(\sigma^2\)

\(AP_{Cap}\)

1.45 32.64 152.87 29.25

\(AP_{Lab}\)

0.86 10.21 25.63 6.20

\(AP_{Mat}\)

8.22 90.64 301.43 60.43

Ce tableau, en plus des visualisations qui vont suivre, permet d’établir que les productivités moyennes par facteur sont très différentes selon les producteurs. De plus, on s’aperçoit aussi qu’investir dans un facteur particulier peut être plus intéressant qu’un autre.

C’est particulièrement vrai pour le facteur Mat avec une productivité moyenne minimale de 8.22 unités d’output pour une unité de matériaux et jusqu’à 301.43 unités d’output pour une unité de matériaux.

3.2 Corrélations entre les quantités des 3 facteurs de production

Matrice de corrélation
\(q_{Cap}\) \(q_{Lab}\) \(q_{Mat}\)

\(q_{Cap}\)

1.00 0.59 0.66

\(q_{Lab}\)

0.59 1.00 0.79

\(q_{Mat}\)

0.66 0.79 1.00
  • Les quantités des 3 facteurs de production sont toutes corrélées positivement.

  • On s’aperçoit que la corrélation positive la plus importante est entre \(q_{Lab}\) et \(q_{Mat}\) \(\Rightarrow\) cela implique que lorsque la quantité de travail augmente, la quantité de matériaux a tendance à augmenter dans un niveau très similaire, et vice versa.

3.3 Corrélations entre les productivités moyennes

Essayons maintenant de comprendre comment les productivités moyennes individuelles sont corrélées :

Matrice de corrélation
\(AP_{Cap}\) \(AP_{Lab}\) \(AP_{Mat}\)

\(AP_{Cap}\)

1.00 0.51 0.46

\(AP_{Lab}\)

0.51 1.00 0.73

\(AP_{Mat}\)

0.46 0.73 1.00
  • Ces résultats nous suggèrent l’existence de relations positives entre les productivités moyennes des différents facteurs de production dans le processus de production.

  • Ici, une augmentation de la productivité moyenne du travail peut être associée à une augmentation significative de la productivité moyenne des matériaux, ce qui peut être dû à des facteurs tels que des processus de production plus efficaces ou une meilleure utilisation des ressources de la part du producteur de pommes.


Note

Les représentations des productivités moyennes \(AP_{Cap}\), \(AP_{Lab}\) et \(AP_{Mat}\) par rapport à l’output \(q_{Out}\) peuvent aussi être très utiles pour comprendre les relations entre la production totale et l’utilisation des différents facteurs de production.

  • Les valeurs extrêmes dans ces nuages de points nous permettent de distinguer aisément les producteurs efficaces et inefficaces dans l’utilisation des ressources.

3.4 Indices de Paasche, Laspeyres et Fisher

Les productivités moyennes nous donnent une indication facteur par facteur, mais elles ne nous donnent pas nécessairement d’information globale. Dans ce cadre, on peut alors se demander comment agréger des quantités avec une règle ad hoc en un indice synthétique.

3 Indices principaux existent

Indice de Paasche

\[ \text{Paasche}_{index} = \frac{(v_{Cap} + v_{Lab} + v_{Mat})}{{\bar{q}_{Cap}}\cdot p_{Cap} + \bar{q}_{Lab}\cdot p_{Lab} + \bar{q}_{Mat} \cdot p_{Mat}} \]

Indice de Laspeyres

\[ \text{Laspeyres}_{index} = \frac{(q_{Cap} \cdot \bar{p}_{Cap} + q_{Lab} \cdot \bar{p}_{Lab} + q_{Mat} \cdot \bar{p}_{Mat})}{(\bar{q}_{Cap}\cdot \bar{p}_{Cap}+\bar{q}_{Lab}\cdot \bar{p}_{Lab}+\bar{q}_{Mat}\cdot \bar{p}_{Mat})} \]

Indice de Fisher

\[ \text{Fisher}_{index} = \sqrt{\text{Paasche}_{index} \cdot \text{Laspeyres}_{index}} \]

De plus, la fonction quantityIndex du package micEconIndex a l’intérêt de facilement intégrer les calculs de chaque indice (Voir ci-dessous).

apples <- apples |> mutate(
    L_Index = quantityIndex(
        prices = c("pCap", "pLab", "pMat"),
        quantities = c("qCap", "qLab", "qMat"),
        data = apples,
        method = "Laspeyres"
    ),
    P_Index = quantityIndex(
        prices = c("pCap", "pLab", "pMat"),
        quantities = c("qCap", "qLab", "qMat"),
        data = apples,
        method = "Paasche"
    ),
    F_Index = quantityIndex(
        prices = c("pCap", "pLab", "pMat"),
        quantities = c("qCap", "qLab", "qMat"),
        data = apples,
        method = "Fisher"
    )
)
`geom_smooth()` using formula = 'y ~ x'


Matrice de corrélation
\(AP_{Cap}\) \(AP_{Lab}\) \(AP_{Mat}\) \(\text{Fisher}_{index}\)

\(AP_{Cap}\)

1.00 0.51 0.46 0.11

\(AP_{Lab}\)

0.51 1.00 0.73 0.36

\(AP_{Mat}\)

0.46 0.73 1.00 0.23

\(\text{Fisher}_{index}\)

0.11 0.36 0.23 1.00
  • Ces résultats suggèrent que l’indice de Fisher n’est pas fortement corrélé avec les productivités moyennes individuelles des facteurs de production.

3.5 Productivité globale des facteurs

  • Dans la section précédente, nous avons montré que les indices donnaient sensiblement les mêmes résultats. Nous avons néanmoins choisi en tant qu’indice de productivité globale des facteurs l’indice de Fisher, étant donné qu’il est une moyenne géométrique de l’indice de Paasche et de celui de Laspeyres.

  • De manière intéressante, contrairement aux histogrammes des productivités moyennes de la Section 3.1, la plupart des valeurs que prend l’indice de Fisher sont plus concentrées.

Note

La variable dichotomique adv présente dans notre dataset est définie par :

\[ adv = \begin{cases} 0 \text{ si le producteur n'est pas conseillé}\\ 1 \text{ si le producteur est conseillé} \end{cases} \]

On pourrait penser que les producteurs qui ont été conseillés par des laboratoires d’agronomie ont un indice de productivité globale plus important que ceux qui ne l’ont pas été.

Vérifions-le graphiquement et statistiquement

  • En moyenne, il semble ne pas y avoir de différence de productivité globale lorsque le producteur est conseillé. En effet, la productivité moyenne avec conseil est égale à 0.95 tandis que la productivité moyenne sans conseil est quant à elle égale à 1.

On peut aussi s’assurer que les moyennes sont significativement différentes en faisant un test de Student bilatéral :

\[ \begin{cases} H_0:\mu_{advice} =\mu_{no\_advice}\\ H_1:\mu_{advice} \neq\mu_{no\_advice} \end{cases} \]

\(\Rightarrow\) Au risque \(\alpha = 5\%\), la \(p-value =\) 0.64 \(> 0.05\), on conserve donc l’hypothèse nulle \(H_0\).

4 Analyse exploratoire

  • Axe 1 \(\Rightarrow\) Combinaison de variables : synthéthise les indices de Fisher, Paasche et Laspeyres, ainsi que les quantités et les coûts des 3 facteurs de production.

  • Axe 2 \(\Rightarrow\) Productivités moyennes.

TODO : Customiser les couleurs de contributions et des inerties et tout

Le test de normalité confirme statistiquement le fait que les données log(qOut) suivent une distribution normale (p.value > 0.05)

Code
shapiro.test(log(apples$qOut))

    Shapiro-Wilk normality test

data:  log(apples$qOut)
W = 0.98429, p-value = 0.1094

5 Fonction de production linéaire

Forme de la fonction

\[ q_i = \alpha + \sum_{k=1}^3\beta_k x_{ik} + ε_i \]

  • La fonction de production linéaire dans notre cas s’écrit donc sous la forme :

\[ q_{Out} = \alpha + \beta_1 q_{Cap} + \beta_2 q_{Lab} + \beta_3 q_{Mat} + ε_i \]

On a pu constater un lien indéniable entre la quantité produite (qOut) et les productivités moyennes. On peut alors légitimement penser qu’il existe une relation entre la quantité produite et les quantités des facteurs de production.

Avant de s’aventurer dans des formes fonctionnelles plus complexes, commençons par utiliser une simple fonction de production linéaire.

linreg_prod <- lm(qOut ~ qCap + qLab + qMat, data = apples)
Fonction de production linéaire
Variable dépendante : qOut
Description Coefficients Ecart Type Pvalues Significativité

\(\alpha\)

  • Constante du modèle
−1,615,978.639 +/- 231771.709 0

\(***\)

\(\beta_1\)

  • Coefficient associé à la variable qCap
1.788 +/- 1.995 0.372

\(\beta_2\)

  • Coefficient associé à la variable qLab
11.831 +/- 1.272 0

\(***\)

\(\beta_3\)

  • Coefficient associé à la variable qMat
46.668 +/- 11.234 0

\(***\)

Observations : 140

\(R^2=\) 0.787
\(R^2_{adj}=\) 0.782
  • Le coefficient associé à qCap est de 1.788, mais il n’est pas statistiquement significatif, ce qui suggère que la quantité de capital n’a pas une influence significative sur la production totale.

  • Le coefficient associé à qLab est de 11.831 avec un niveau de significativité très élevé, ce qui signifie que pour chaque unité supplémentaire de travail utilisée, la production totale augmente en moyenne de 11.831 unités. Cela revèle une fois de plus l’influence importante de la quantité de travail sur la quantité d’output.

  • Le coefficient associé à qMat est de 46.668 avec un niveau de significativité très élevé, ce qui indique que pour chaque unité supplémentaire de matériaux utilisés, la production totale augmente en moyenne de 46.668 unités.

\(R^2_{adj}=\) 0.782 donc 78.2% de la variance de la production totale est expliquée par la variance des variables explicatives.

🔎 Comparaison de la production effective et de la production prédite

5.1 Hétéroscédasticité

Les résidus sont-ils normalement distribués ?

TODO : Continuer la partie sur l’hétéroscédasticité

Code
# performance::check_normality(linreg_prod)
# qqnorm(residuals |> pull())
# qqline(residuals |> pull())
# à changer en ggplot2 ici

5.2 Spécification de la forme fonctionnelle

On peut utiliser un RESET TEST pour vérifier la forme fonctionnelle est bonne.

Code
resettest(linreg_prod, power = 2)

    RESET test

data:  linreg_prod
RESET = 22.189, df1 = 1, df2 = 135, p-value = 6.061e-06
Code
AIC(linreg_prod)
[1] 4392.621
Code
logLik(linreg_prod) # extraire la log likelihood
'log Lik.' -2191.31 (df=5)

Ici, on va préférer prendre une autre forme fonctionnelle

Inconvénients de la forme fonctionnelle linéaire

Malgré un \(R^2_{adj}\) proche de 0.8, ce qui signifie que le modèle a plutôt un bon ajustement, la spécification linéaire possède plusieurs problèmes :

  1. Elle ne permet pas d’estimer les rendements d’échelle car ils sont fixés comme constants dans la forme fonctionnelle.
  2. Elle ne permet pas d’évaluer les possibilités de substitution entre les trois facteurs de production.

\(\Rightarrow\) Face à ces inconvénients du modèle linéaire, la fonction Cobb-Douglas permet de fournir une réponse au point (1).

6 Fonction Cobb-Douglas

Forme de la fonction

\[ q_i = A \prod_{k=1}^3 x_{ik}^{a_k}ε_i \]

  • La fonction de production Cobb-Douglas dans notre cas s’écrit donc sous la forme :

\[ q_{Out} = A\cdot q_{Cap}^\alpha \cdot q_{Lab}^\beta \cdot q_{Mat}^\gamma \cdot ε_i \]

On peut aussi facilement linéariser la fonction pour pouvoir la préparer à une procédure lm, dès lors on obtient :

\[ \ln(q_{out}) = \ln(A) + \alpha \cdot \ln(q_{Cap}) + \beta \cdot \ln(q_{Lab}) + \gamma \cdot \ln(q_{Mat}) + \ln{(ε_i)} \]

Le package micEcon propose néanmoins l’estimation d’une fonction de production Cobb-Douglas grâce à la fonction translogEst et l’argument linear = TRUE1.

cd_prod <- translogEst(
    "qOut",
    c("qCap", "qLab", "qMat"),
    data = apples,
    linear = TRUE
)
Fonction de production Cobb-Douglas
Variable dépendante : qOut
Description Coefficients Ecart Type Pvalues Significativité

\(A\)

  • Constante du modèle
−2.064 +/- 1.313 0.118

\(\alpha\)

  • Coefficient associé à la variable qCap
0.163 +/- 0.087 0.064

\(*\)

\(\beta\)

  • Coefficient associé à la variable qLab
0.676 +/- 0.154 0

\(***\)

\(\gamma\)

  • Coefficient associé à la variable qMat
0.627 +/- 0.126 0

\(***\)

Observations : 140

\(R^2=\) 0.594
\(R^2_{adj}=\) 0.585

Warning: Maximum value of original data is not included in the
  replicated data.
  Model may not capture the variation of the data.

  • La qualité d’ajustement du modèle a diminué, le \(R^2_{adj}\) a baissé de près de 20% pour atteindre 0.585.

6.1 Rendements d’échelle

Les exposants \(\alpha\), \(\beta\) et \(\gamma\) sont les élasticités de la production, c’est-à-dire qu’ils mesurent respectivement le changement en pourcentage de l’output aux variations en pourcentage de la quantité de capital, de la quantité de travail et de la quantité de matériaux.

  • Grâce à ces coefficients estimés, on peut déterminer les rendements d’échelle.
Note sur les rendements d’échelle
  • Décroissants si \(\hat{\alpha} + \hat{\beta} + \hat{\gamma} < 1\)

  • Constants si \(\hat{\alpha} + \hat{\beta} + \hat{\gamma} = 1\)

  • Croissants si \(\hat{\alpha} + \hat{\beta} + \hat{\gamma} > 1\)

alpha <- cd_prod$coef[2] |> unname()
beta <- cd_prod$coef[3] |> unname()
gamma <- cd_prod$coef[4] |> unname()

return_to_scale <- alpha + beta + gamma
  • On trouve donc que \(\hat{\alpha} + \hat{\beta} + \hat{\gamma} =\) 1.47, donc les rendements d’échelles sont croissants, c’est à dire que le processus de production est considéré comme particulièrement efficace et présente des économies d’échelle.

  • Ces rendements d’échelle croissants sont souvent le résultat de coûts fixes élevés (voir la Section 2.1 pour s’en convaincre).

Une implication de ce résultat est que des installations de production à grande échelle ont tendance à être plus efficaces que des installations à petite échelle.


Intéressons-nous à l’élasticité de substitution, qui mesure la facilité avec laquelle un input peut être substitué par un autre.

  • Si l’elasticité de substitution n’est pas empiriquement estimable pour la Cobb-Douglas, celle-ci suppose implicitement que l’élasticité de substitution de Allen est égale à un, soit \(\sigma_{\{\text{qCap, qLab, qMat}\}} = 1\).

  • Cela implique une substitution parfaite entre les facteurs de production \(q_{Cap}\), \(q_{Lab}\) et \(q_{Mat}\), ce qui va clairement à l’encontre des résultats de la Section 3.1.

On ne peut donc pas étudier les substitutions entre les facteurs de production car la Cobb-Douglas ne permet tout simplement pas de le faire !

6.2 Productivité marginale des inputs

La productivité marginale se réfère à la variation de la production totale résultant d’une petite variation d’un facteur de production spécifique, toutes choses égales par ailleurs.

En d’autres termes, il s’agit de la quantité supplémentaire d’output qu’une entreprise peut produire en utilisant une unité supplémentaire d’un facteur de production donné, tout en maintenant constantes les quantités des autres facteurs de production.

Nous obtenons alors respectivement :

  • \(MP_{Cap} = \frac{\partial q_{Out}}{\partial q_{Cap}}\)

  • \(MP_{Lab} = \frac{\partial q_{Out}}{\partial q_{Lab}}\)

  • \(MP_{Mat} = \frac{\partial q_{Out}}{\partial q_{Mat}}\)

On peut facilement calculer ces productivités marginales avec la fonction cobbDouglasDeriv.

cd_prod_margProducts <- cobbDouglasDeriv(
    c("qCap", "qLab", "qMat"),
    data = apples, coef = coef(cd_prod)[1:4],
    coefCov = vcov(cd_prod)[1:4, 1:4]
)
Productivités marginales
Dans le cadre d’une fonction de production Cobb-Douglas
  • Par exemple, pour le producteur 1 :
    • L’augmentation d’une unité de capital tout en maintenant constant le niveau de travail et de matériaux entraînera une augmentation de 6.23 unités d’output.
    • L’augmentation d’une unité de travail tout en maintenant constant le niveau de capital et de matériaux entrainera une augmentation de 6.03 unités d’output.
    • L’augmentation d’une unité de matériaux tout en maintenant constant le niveau de travail et de capital entrainera une augmentation de 59.09 unités d’output.

On remarque dans ce modèle que la productivité marginale des matériaux est supérieure à celle du capital et du travail pour tous les producteurs. De plus, aucune productivité marginale n’est négative

7 Fonction de production quadratique

Forme de la fonction

\[ q_i = \alpha + \sum_{k=1}^3\beta_k x_{ik} + \frac{1}{2}\sum_{l=1}^3\sum_{k=1}^3 \beta_{kl}x_{ik}x_{il} + ε_i \]

  • La fonction de production quadratique dans notre cas s’écrit donc sous la forme :

\[ \begin{gathered}q_{Out}​=α+β_1​q_{Cap}​+β_2​q_{Lab}​+β_3​q_{Mat}\\ ​+\frac{1}{2}​(β_{11}​q^2_{Cap}​+β_{22}​q^2_{Lab}​+β_{33}​q^2_{Mat})\\ ​+​β_{12}​q_{Cap}​q_{Lab}​+β_{13}​q_{Cap}​q_{Mat}​+β_{23}​q_{Lab}​q_{Mat}​+ε_i​ \end{gathered} \]

✅ Avantages :

  • La fonction de production quadratique va permettre d’ajouter des termes quadratiques et des effets d’interaction, rendant la modélisation plus robuste.

❌ Inconvénients :

  • L’ajout de termes supplémentaires implique plus de complexité et de coefficients à estimer \((3^2 = 9)\).
quad_prod <- quadFuncEst(
    "qOut",
    c("qCap", "qLab", "qMat"),
    data = apples
)
Fonction de production quadratique
Variable dépendante : qOut
Description Coefficients Ecart Type Pvalues Significativité

\(\alpha\)

  • Constante du modèle
−291,113.132 +/- 361461.083 0.422

\(\beta_1\)

  • Coefficient associé à la variable qCap
5.27 +/- 4.403 0.234

\(\beta_2\)

  • Coefficient associé à la variable qLab
6.077 +/- 3.185 0.059

\(*\)

\(\beta_3\)

  • Coefficient associé à la variable qMat
14.303 +/- 24.057 0.553

\(\beta_{11}\)

  • Coefficient associé à la variable qCap²
0.00005 +/- 0 0.176

\(\beta_{12}\)

  • Coefficient associé à la variable qCap×qLab
−0.00003 +/- 0 0.041

\(**\)

\(\beta_{13}\)

  • Coefficient associé à la variable qCap×qMat
−0.00004 +/- 0 0.778

\(\beta_{22}\)

  • Coefficient associé à la variable qLab²
−0.00003 +/- 0 0.141

\(\beta_{23}\)

  • Coefficient associé à la variable qLab×qMat
0.0004 +/- 0 0

\(***\)

\(\beta_{33}\)

  • Coefficient associé à la variable qMat²
−0.002 +/- 0.001 0.036

\(**\)

Observations : 140

\(R^2=\) 0.845
\(R^2_{adj}=\) 0.834
  • Le coefficient associé à qCap est de 5.27, mais il n’est pas statistiquement significatif, ce qui suggère que la quantité de capital n’a pas une influence significative sur la production totale dans ce modèle.

  • Le coefficient associé à qLab est de 6.077 avec un niveau de significativité assez faible, ce qui signifie que pour chaque unité supplémentaire de travail utilisée, la production totale augmente en moyenne de 6.077 unités, toutes choses égales par ailleurs.

  • Le coefficient associé à qMat est de 14.303, mais il n’est pas statistiquement significatif, ce qui suggère que la quantité de matériaux n’a pas une influence significative sur la production totale dans ce modèle.

  • Le coefficient associé à l’effet d’interaction entre les quantités de capital et de travail (qCap×qLab) est négatif et significatif au seuil de 5%. Cela suggère que l’interaction entre ces 2 facteurs a un effet négatif sur la production.

  • Le coefficient associé à l’effet d’interaction entre les quantités de tavail et de matériaux (qLab×qMat) est positif et significatif au seuil de 1%. Cela suggère que l’interaction entre ces 2 facteurs a un effet positif sur la production.

  • Enfin, le coefficient associé à l’effet quadratique des matériaux (qMat²) est statistiquement significatif au seuil 5% et possède une valeur négative, ce qui suggère une courbe de rendement d’échelle décroissante pour les matériaux, indiquant que l’augmentation de la quantité de matériaux pourrait initialement augmenter la production, mais à un rythme décroissant.

\(R^2_{adj} =\) 0.834 donc 83.4% de la variance de la production totale est expliquée par la variance des variables explicatives. Ce résultat est meilleur que les fonctions de production linéaire et Cobb-Douglas.

7.1 Productivité marginale des inputs

quad_prod_margProducts <- quadFuncDeriv(
    c("qCap", "qLab", "qMat"),
    data = apples,
    coef = coef(quad_prod),
    coefCov = vcov(quad_prod)
)
Productivités marginales
Dans le cadre d’une fonction de production quadratique

7.2 Elasticité de substitution des inputs

TODO : à confirmer ?

Code
# elasticities(quad_prod)

8 Fonction de production Translog

Forme de la fonction

\[ \begin{gathered} ln(q_i) = \alpha + \sum_{k=1}^3\beta_kln(x_{ik}) \\ + \frac{1}{2}\sum_{l=1}^3\sum_{k=1}^3 \beta_{kl}ln(x_{ik})ln(x_{il}) + ε_i \end{gathered} \]

translog_prod <- translogEst(
    "qOut",
    c("qCap", "qLab", "qMat"),
    data = apples
)
Code
summary(translog_prod)
Estimated Translog function with 140 observations.
       Estimate Std. Error t value Pr(>|t|)  
a_0   -4.145812  21.359450 -0.1941  0.84640  
a_1   -2.306835   2.288291 -1.0081  0.31528  
a_2    1.993284   4.566243  0.4365  0.66318  
a_3    2.231700   3.763344  0.5930  0.55420  
b_1_1 -0.025734   0.208339 -0.1235  0.90189  
b_1_2  0.561944   0.291199  1.9298  0.05582 .
b_1_3 -0.409965   0.235342 -1.7420  0.08387 .
b_2_2 -1.163639   0.679429 -1.7127  0.08916 .
b_2_3  0.657928   0.427502  1.5390  0.12623  
b_3_3 -0.503680   0.434983 -1.1579  0.24902  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
R-squared: 0.6295696     Adjusted R-squared: 0.6039244 
Code
gtgazer(
    translog_prod,
    n_coef = 10,
    coefnames = c("$A$", "$\\beta_1$", "$\\beta_2$", "$\\beta_3$", "$\\beta_{11}$", "$\\beta_{12}$", "$\\beta_{13}$", "$\\beta_{22}$", "$\\beta_{23}$", "$\\beta_{33}$"),
    description = c(
        "- Constante du modèle",
        "- Coefficient associé à la variable `qCap`",
        "- Coefficient associé à la variable `qLab`",
        "- Coefficient associé à la variable `qMat`",
        "- Coefficient associé à la variable `qCap²`",
        "- Coefficient associé à la variable `qCap×qLab`",
        "- Coefficient associé à la variable `qCap×qMat`",
        "- Coefficient associé à la variable `qLab²`",
        "- Coefficient associé à la variable `qLab×qMat`",
        "- Coefficient associé à la variable `qMat²`"
    ),
    title = "**Fonction de production Translog**",
    bg_color = bg_color
)
Fonction de production Translog
Variable dépendante : qOut
Description Coefficients Ecart Type Pvalues Significativité

\(A\)

  • Constante du modèle
−4.146 +/- 21.359 0.846

\(\beta_1\)

  • Coefficient associé à la variable qCap
−2.307 +/- 2.288 0.315

\(\beta_2\)

  • Coefficient associé à la variable qLab
1.993 +/- 4.566 0.663

\(\beta_3\)

  • Coefficient associé à la variable qMat
2.232 +/- 3.763 0.554

\(\beta_{11}\)

  • Coefficient associé à la variable qCap²
−0.026 +/- 0.208 0.902

\(\beta_{12}\)

  • Coefficient associé à la variable qCap×qLab
0.562 +/- 0.291 0.056

\(*\)

\(\beta_{13}\)

  • Coefficient associé à la variable qCap×qMat
−0.41 +/- 0.235 0.084

\(*\)

\(\beta_{22}\)

  • Coefficient associé à la variable qLab²
−1.164 +/- 0.679 0.089

\(*\)

\(\beta_{23}\)

  • Coefficient associé à la variable qLab×qMat
0.658 +/- 0.428 0.126

\(\beta_{33}\)

  • Coefficient associé à la variable qMat²
−0.504 +/- 0.435 0.249
Observations : 140

\(R^2=\) 0.63
\(R^2_{adj}=\) 0.604
Code
translogCheckMono(
    c("qCap", "qLab", "qMat"),
    data = apples,
    coef = coef(translog_prod),
    increasing = TRUE
)
This translog function is monotonically increasing in qCap, qLab, qMat at 92 out of 140 observations (65.7%)

Check whether the production function is quasiconcave

Code
translogCheckCurvature(
    c("qCap", "qLab", "qMat"),
    data = apples,
    coef = coef(translog_prod),
    convexity = FALSE,
    quasi = TRUE
)
This translog function is quasiconcave at 63 out of 140 observations (45%)

9 Fonction de production CES

10 Fonction de production SFA

TODO tester avec plusieurs formes fonctionnelles ? Pour l’instant, ça a été fait avec une cobb douglas, mais on pourrait aussi le faire avec une translog.

Code
cd_sfa <- sfa(log(qOut) ~ log(qCap) + log(qLab) + log(qMat), data = apples)

cd_sfa$olsParam # on retrouve les mêmes params que la cobb douglas ici
(Intercept)   log(qCap)   log(qLab)   log(qMat)     sigmaSq 
 -2.0637688   0.1630268   0.6762184   0.6271972   0.4303949 
Code
cd_sfa

Call:
sfa(formula = log(qOut) ~ log(qCap) + log(qLab) + log(qMat),      data = apples)

Maximum likelihood estimates
(Intercept)    log(qCap)    log(qLab)    log(qMat)      sigmaSq        gamma  
     0.2288       0.1609       0.6848       0.4659       1.0000       0.8967  
Code
lrtest(cd_sfa) # interprétation : la SFA c'est wallah mieux que la Cobb Douglas classique.
Likelihood ratio test

Model 1: OLS (no inefficiency)
Model 2: Error Components Frontier (ECF)
  #Df  LogLik Df  Chisq Pr(>Chisq)   
1   5 -137.61                        
2   6 -133.89  1 7.4387   0.003192 **
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Code
# Note => Faire plus de tests de comparaison de modèles : translog vs cobb douglas, etc...

resettestFrontier(cd_sfa, power = 2) # notre modèle
Likelihood ratio test

Model 1: cd_sfa
Model 2: cd_sfa + fit^2
  #Df  LogLik Df  Chisq Pr(>Chisq)
1   6 -133.89                     
2   7 -133.71  1 0.3669     0.5447
Code
effic <- efficiencies(cd_sfa)

effic |>
    as_tibble() |>
    summarise(
        mean_eff = mean(efficiency),
        min_eff = min(efficiency),
        max_eff = max(efficiency)
    )
# A tibble: 1 × 3
  mean_eff min_eff max_eff
     <dbl>   <dbl>   <dbl>
1    0.538   0.102   0.875

le resettest permet \(\Rightarrow\) de tester si des combinaisons non-linéaires des variables explicatives aident à expliquer the response variable.

The intuition behind the test is that if non-linear combinations of the explanatory variables have any power in explaining the response variable, the model is misspecified in the sense that the data generating process might be better approximated by a polynomial or another non-linear functional form.

11 Fonction de coût Cobb Douglass

Forme de la fonction

\[ c_i = A \prod_{k=1}^{3} p_{ik}^{\alpha_k}q_i^{\alpha_y} \epsilon_i \]

Calculons d’abord le coût total des inputs, c’est à dire \(v_{Cap} + v_{Lab} + v_{Mat}\).

apples <- apples |> mutate(cost = vCap + vLab + vMat)
Code
cobb_cost <- translogCostEst(
    cName = "cost",
    yName = "qOut",
    pName = c("pCap", "pLab", "pMat"),
    apples, homPrice = FALSE,
    linear = TRUE
)
Code
summary(cobb_cost$est)

Call:
lm(formula = as.formula(estFormula), data = estData)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.77663 -0.23243 -0.00031  0.24439  0.74339 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  6.75383    0.40673  16.605  < 2e-16 ***
a_1          0.37341    0.03072  12.154  < 2e-16 ***
a_2          0.07437    0.04878   1.525  0.12969    
a_3          0.46486    0.14694   3.164  0.00193 ** 
a_4          0.48642    0.08112   5.996 1.74e-08 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3395 on 135 degrees of freedom
Multiple R-squared:  0.6884,    Adjusted R-squared:  0.6792 
F-statistic: 74.56 on 4 and 135 DF,  p-value: < 2.2e-16
Code
gtgazer(
    cobb_cost,
    n_coef = 4,
    coefnames = c("$A$", "$\\alpha_1$", "$\\alpha_2$", "$\\alpha_3$", "$\\alpha_4$"),
    description = c(
        "- Constante du modèle",
        "- Coefficient associé à la variable `qOut`",
        "- Coefficient associé à la variable `pCap`",
        "- Coefficient associé à la variable `pLab`",
        "- Coefficient associé à la variable `pMat`"
    ),
    title = "**Fonction de coût Cobb Douglass**",
    bg_color = bg_color
)
Fonction de coût Cobb Douglass
Variable dépendante : cost
Description Coefficients Ecart Type Pvalues Significativité

\(A\)

  • Constante du modèle
6.754 +/- 0.407 0

\(***\)

\(\alpha_1\)

  • Coefficient associé à la variable qOut
0.373 +/- 0.031 0

\(***\)

\(\alpha_2\)

  • Coefficient associé à la variable pCap
0.074 +/- 0.049 0.13

\(\alpha_3\)

  • Coefficient associé à la variable pLab
0.465 +/- 0.147 0.002

\(**\)

\(\alpha_4\)

  • Coefficient associé à la variable pMat
0.486 +/- 0.081 0

\(***\)

Observations : 140

\(R^2=\) 0.688
\(R^2_{adj}=\) 0.679

12 Fonction de coût Cobb Douglass de court terme

Forme de la fonction

\[ c_i = A x_{i3}^{\alpha_3}\prod_{k=1}^{2} p_{ik}^{\alpha_k}q_i^{\alpha_y} \epsilon_i \]

Code
cobb_cost_ct <- translogCostEst(
    cName = "cost",
    yName = "qOut",
    pName = c("pLab", "pMat"),
    fNames = "pCap",
    apples, homPrice = FALSE,
    linear = TRUE
)
Code
summary(cobb_cost_ct$est)

Call:
lm(formula = as.formula(estFormula), data = estData)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.77663 -0.23243 -0.00031  0.24439  0.74339 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  6.75383    0.40673  16.605  < 2e-16 ***
a_1          0.37341    0.03072  12.154  < 2e-16 ***
a_2          0.46486    0.14694   3.164  0.00193 ** 
a_3          0.48642    0.08112   5.996 1.74e-08 ***
a_4          0.07437    0.04878   1.525  0.12969    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3395 on 135 degrees of freedom
Multiple R-squared:  0.6884,    Adjusted R-squared:  0.6792 
F-statistic: 74.56 on 4 and 135 DF,  p-value: < 2.2e-16
Code
gtgazer(
    cobb_cost_ct,
    n_coef = 4,
    coefnames = c("$A$", "$\\alpha_1$", "$\\alpha_2$", "$\\alpha_3$", "$\\alpha_4$"),
    description = c(
        "- Constante du modèle",
        "- Coefficient associé à la variable `qOut`",
        "- Coefficient associé à la variable `pCap`",
        "- Coefficient associé à la variable `pLab`",
        "- Coefficient associé à la variable `pMat`"
    ),
    title = "**Fonction de coût Cobb Douglass de court terme**",
    bg_color = bg_color
)
Fonction de coût Cobb Douglass de court terme
Variable dépendante : cost
Description Coefficients Ecart Type Pvalues Significativité

\(A\)

  • Constante du modèle
6.754 +/- 0.407 0

\(***\)

\(\alpha_1\)

  • Coefficient associé à la variable qOut
0.373 +/- 0.031 0

\(***\)

\(\alpha_2\)

  • Coefficient associé à la variable pCap
0.465 +/- 0.147 0.002

\(**\)

\(\alpha_3\)

  • Coefficient associé à la variable pLab
0.486 +/- 0.081 0

\(***\)

\(\alpha_4\)

  • Coefficient associé à la variable pMat
0.074 +/- 0.049 0.13
Observations : 140

\(R^2=\) 0.688
\(R^2_{adj}=\) 0.679

13 Fonction de coût Translog

Forme de la fonction

\[ \begin{gathered}ln(c_i) = \alpha + \sum_{k=1}^3 \beta_k ln(p_{ik}) + \alpha_qln(q_i) \\ +\frac{1}{2}\sum_{l=1}^3\sum_{k=1}^3\beta_{kl}ln(p_{ik})ln(p_{il})\frac{1}{2}\alpha_{q}(ln(q_i))^2 \\ +\frac{1}{2}\sum_{k=1}^3\alpha_{kq}ln(p_{ik})ln(q_i)+\epsilon_i \end{gathered} \]

Code
translog_cost <- translogCostEst(
    cName = "cost",
    yName = "qOut",
    pName = c("pCap", "pLab", "pMat"),
    apples, homPrice = FALSE
)
Code
summary(translog_cost$est)

Call:
lm(formula = as.formula(estFormula), data = estData)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.73251 -0.18718  0.02001  0.15447  0.82858 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) 25.383429   3.511353   7.229 4.26e-11 ***
a_1         -2.040079   0.510905  -3.993 0.000111 ***
a_2          0.198813   0.537885   0.370 0.712291    
a_3         -0.024792   2.232126  -0.011 0.991156    
a_4         -1.244914   1.201129  -1.036 0.301992    
b_1_1        0.164075   0.041078   3.994 0.000110 ***
b_1_2       -0.028090   0.042844  -0.656 0.513259    
b_1_3        0.007533   0.171134   0.044 0.964959    
b_1_4        0.048794   0.092266   0.529 0.597849    
b_2_2       -0.095173   0.105158  -0.905 0.367182    
b_2_3       -0.746199   0.244445  -3.053 0.002772 ** 
b_2_4        0.182268   0.130463   1.397 0.164865    
b_3_3       -0.503168   0.943390  -0.533 0.594730    
b_3_4        0.139429   0.433408   0.322 0.748215    
b_4_4        0.529021   0.337680   1.567 0.119728    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3043 on 125 degrees of freedom
Multiple R-squared:  0.7682,    Adjusted R-squared:  0.7423 
F-statistic: 29.59 on 14 and 125 DF,  p-value: < 2.2e-16
Code
gtgazer(
    translog_cost,
    n_coef = 9,
    coefnames = c("$A$"),
    description = c(
        "- Constante du modèle"
    ),
    title = "**Fonction de coût Translog**",
    bg_color = bg_color
)
Fonction de coût Translog
Variable dépendante : cost
Description Coefficients Ecart Type Pvalues Significativité

\(A\)

  • Constante du modèle
25.383 +/- 3.511 0

\(***\)

\(A\)

  • Constante du modèle
−2.04 +/- 0.511 0

\(***\)

\(A\)

  • Constante du modèle
0.199 +/- 0.538 0.712

\(A\)

  • Constante du modèle
−0.025 +/- 2.232 0.991

\(A\)

  • Constante du modèle
−1.245 +/- 1.201 0.302

\(A\)

  • Constante du modèle
0.164 +/- 0.041 0

\(***\)

\(A\)

  • Constante du modèle
−0.028 +/- 0.043 0.513

\(A\)

  • Constante du modèle
0.008 +/- 0.171 0.965

\(A\)

  • Constante du modèle
0.049 +/- 0.092 0.598

\(A\)

  • Constante du modèle
−0.095 +/- 0.105 0.367

\(A\)

  • Constante du modèle
−0.746 +/- 0.244 0.003

\(**\)

\(A\)

  • Constante du modèle
0.182 +/- 0.13 0.165

\(A\)

  • Constante du modèle
−0.503 +/- 0.943 0.595

\(A\)

  • Constante du modèle
0.139 +/- 0.433 0.748

\(A\)

  • Constante du modèle
0.529 +/- 0.338 0.12
Observations : 140

\(R^2=\) 0.768
\(R^2_{adj}=\) 0.742

14 Profit des producteurs

Code
apples |>
    select(pOut, qOut) |>
    mutate(profit = pOut * qOut)
# A tibble: 140 × 3
    pOut     qOut   profit
   <dbl>    <dbl>    <dbl>
 1 0.660 1374064.  907365.
 2 0.716 1122979.  803547.
 3 0.937 2158518. 2021990.
 4 0.597  507389.  302899.
 5 0.825 1070816.  883836.
 6 1.39  5166835. 7185746.
 7 1.33  4302187. 5704140.
 8 0.618 1863429. 1152222.
 9 1.91  2538785. 4840007.
10 0.485 1198124.  581153.
# ℹ 130 more rows

15 Infos sur le sujet | ROADMAP

\(\Rightarrow\) Estimer des fonctions de cout, les rendements d’échelle, estimer la fonction CES, la leontieff généralisée, calculer le profit des producteurs, lien entre efficacité, optimalité, vérifier hétéroscédasticité, modèles SFA et DEA potentiellement.

La translog ayant bcp plus de paramètres, ce ne sera pas forcément la bonne forme fonctionnelle !

  • Expliquer les différences de profits entre les producteurs ? Regarder du coté des fonctions de profit.

Propriété de la CD => si la fonction de prod est cobb douglas, alors la fonction de coût l’est aussi.

  • Pour la question 7, on intègre la quantité d’inputs comme variable explicative => fonction de cout de court terme

  • Fonction de cout qui intègre que la quantité de capital ne change pas instantanément

  • Rendements d’échelle (somme des exposants) => on peut trouver ces rendements d’échelle soit en faisant la fonction de coût, ou la fonction de production. Mais on peut aussi les estimer grace à une fonction de demande

DEUX CHOSES ESSENTIELLES

  • Il faut estimer les substitutions entre facteurs
  • Les rendements d’échelle

Regarder le \(\prod\)

15.1 Notes sur la translog Cost

On pourrait tt à fait estimer le système d’équations suivant :

Voir aussi la slide 78 sur la fonction \(\ln C\)

\[ \begin{cases} S_1 = \alpha_1 + \sum^3_{i=1} \beta_{1j}\ln p_j + \beta_{1y}\ln y\\ S_2 = \alpha_2 + \sum^3_{i=1} \beta_{2j}\ln p_j + \beta_{2y}\ln y\\ S_3 = \alpha_3 + \sum^3_{i=1} \beta_{3j}\ln p_j + \beta_{3y}\ln y \end{cases} \]

Inconvénients dans la translog et des formes flexibles :

Le nombre de paramètres explose à cause des effets croisés et risque important de collinéarité.

Quand on passe au système au tableau, on a augmenté à 3*140 données (420 observations) et on a un peu moins de paramètres

  • Les entreprises les plus grosses sont les plus productives.

done 💅

Les références

Ivaldi, Marc, Norbert Ladoux, Hervé Ossard, et Michel Simioni. 1996. « Comparing Fourier and translog specifications of multiproduct technology: Evidence from an incomplete panel of French farmers ». Journal of applied econometrics 11 (6): 649‑67.
Wickham, Hadley. 2014. « Tidy Data ». Journal of Statistical Software.

Notes de bas de page

  1. Grâce à cet argument, on restreint en fait les coefficients de tous les termes quadratiques et d’interaction à zéro, ce qui revient à estimer une fonction Cobb-Douglas.↩︎

Réutilisation